package com.cskaoyan.javase._8loop;

import java.util.Scanner;

/**
 * 循环结构有三种:
 *      其中while循环和for循环是完全等价的,它们都是上来先做一次判断,然后决定是否进行循环
 *      do...while则不同,它是上来不管三七二十一,先做一次循环体的执行,再进行判断
 *      所以
 *      while 和 for完全可能一次循环都不进行
 *      而do...while则必然会执行一次
 *
 *      实际开发中,for循环是最最常用的,do...while则很少见
 *
 *
 * @since 11:07
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    public static void main(String[] args) {
        // 请计算前n个数的和,累加(n>0)
        // n的累加 = 1 + 2 + 3 + ...+ n
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个正整数n:");
        int n = sc.nextInt();

        // 首先定义累加和的初始值,进行累加
        int sum = 0;
        for (int i = 1; i <= n; i++) {
            // 累加求和
            // sum = sum + i;
            sum += i;
        }
        System.out.println("前" + n + "个数的和是:" + sum);


        // 求前n个数的累乘
        // n的累乘 = 1 * 2 * 3 * ...* n
        // 首先定义累乘积的初始值,进行累乘
        int product = 1;
        // for循环的快捷键 fori
        for (int i = 1; i <= n; i++) {
            product *= i;
        }
        System.out.println("前" + n + "个数的乘积是:" + product);

    }
}
